home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / os2 / adaptor.zip / ADAPT.ZIP / adaptor / src / include / tree.h < prev    next >
Text File  |  1994-01-03  |  49KB  |  1,062 lines

  1. # ifndef yyTree
  2. # define yyTree
  3.  
  4. # if defined __STDC__ | defined __cplusplus
  5. # define ARGS(parameters)    parameters
  6. # else
  7. # define ARGS(parameters)    ()
  8. # endif
  9.  
  10.  
  11. # ifndef bool
  12. # define bool char
  13. # endif
  14. # define NoTree (tTree) 0L
  15. # define kCOMP_UNIT 1
  16. # define kBODY_NODE 2
  17. # define kTYPE_NODE 3
  18. # define kDUMMY_TYPE 4
  19. # define kVOID_TYPE 5
  20. # define kINTEGER_TYPE 6
  21. # define kCARDINAL_TYPE 7
  22. # define kREAL_TYPE 8
  23. # define kBOOLEAN_TYPE 9
  24. # define kCOMPLEX_TYPE 10
  25. # define kCHAR_TYPE 11
  26. # define kSTRING_TYPE 12
  27. # define kINDEX_TYPE 13
  28. # define kTYPE_ID 14
  29. # define kARRAY_TYPE 15
  30. # define kRECORD_TYPE 16
  31. # define kUNION_TYPE 17
  32. # define kENUM_TYPE 18
  33. # define kDYNAMIC 19
  34. # define kPOINTER_TYPE 20
  35. # define kARRAY1_TYPE 21
  36. # define kFUNCTION_TYPE 22
  37. # define kTYPE_NODE_LIST 23
  38. # define kTYPE_EMPTY 24
  39. # define kTYPE_LIST 25
  40. # define kDECL_NODE 26
  41. # define kMODULE_DECL 27
  42. # define kPROGRAM_DECL 28
  43. # define kPROC_DECL 29
  44. # define kFUNC_DECL 30
  45. # define kBLOCK_DATA_DECL 31
  46. # define kTYPE_DECL 32
  47. # define kNAME_DECL 33
  48. # define kRENAME_DECL 34
  49. # define kENTITY_DECL 35
  50. # define kVAR_DECL 36
  51. # define kCOMMON_DECL 37
  52. # define kNAMELIST_DECL 38
  53. # define kTEMPLATE_DECL 39
  54. # define kPROCESSORS_DECL 40
  55. # define kINHERIT_DECL 41
  56. # define kSTMT_FUNC_DECL 42
  57. # define kINTERFACE_DECL 43
  58. # define kEXT_PROC_DECL 44
  59. # define kEXT_FUNC_DECL 45
  60. # define kVAL_PARAM_DECL 46
  61. # define kVAR_PARAM_DECL 47
  62. # define kPROC_PARAM_DECL 48
  63. # define kFUNC_PARAM_DECL 49
  64. # define kELIPSIS_PARAM_DECL 50
  65. # define kRET_PARAM_DECL 51
  66. # define kIMPLICIT_DECL 52
  67. # define kUSE_DECL 53
  68. # define kONLY_USE_DECL 54
  69. # define kEQV_DECL 55
  70. # define kDATA_DECL 56
  71. # define kDIMENSION_DECL 57
  72. # define kINIT_DATA_DECL 58
  73. # define kTYPESPEC_DECL 59
  74. # define kALLOCATABLE_DECL 60
  75. # define kEXTERNAL_DECL 61
  76. # define kINTENT_DECL 62
  77. # define kINTRINSIC_DECL 63
  78. # define kOPTIONAL_DECL 64
  79. # define kPOINTER_DECL 65
  80. # define kSAVE_DECL 66
  81. # define kTARGET_DECL 67
  82. # define kPARAMETER_DECL 68
  83. # define kPUBLIC_DECL 69
  84. # define kPRIVATE_DECL 70
  85. # define kDISTRIBUTE_DECL 71
  86. # define kALIGN_DECL 72
  87. # define kDYNAMIC_DECL 73
  88. # define kSEQUENCE_DECL 74
  89. # define kNOSEQUENCE_DECL 75
  90. # define kDECL_NODE_LIST 76
  91. # define kDECL_EMPTY 77
  92. # define kDECL_LIST 78
  93. # define kDISTRIBUTION_SPEC 79
  94. # define kHOST_DISTRIBUTION 80
  95. # define kREPL_DISTRIBUTION 81
  96. # define kNODE_DISTRIBUTION 82
  97. # define kDISTRIBUTION_FORMAT 83
  98. # define kBLOCK_DISTRIBUTION 84
  99. # define kCYCLIC_DISTRIBUTION 85
  100. # define kSERIAL_DISTRIBUTION 86
  101. # define kDIST_FORMAT_LIST 87
  102. # define kDIST_EMPTY 88
  103. # define kDIST_LIST 89
  104. # define kGENERIC_SPEC 90
  105. # define kNO_GENERIC_SPEC 91
  106. # define kID_GENERIC_SPEC 92
  107. # define kOP_GENERIC_SPEC 93
  108. # define kASSIGN_GENERIC_SPEC 94
  109. # define kACF_NODE_LIST 95
  110. # define kACF_EMPTY 96
  111. # define kACF_LIST 97
  112. # define kACF_NODE 98
  113. # define kACF_DUMMY 99
  114. # define kACF_BASIC 100
  115. # define kACF_IF 101
  116. # define kACF_WHERE 102
  117. # define kACF_SWITCH 103
  118. # define kACF_ALTER 104
  119. # define kACF_CASE 105
  120. # define kACF_WHILE 106
  121. # define kACF_REPEAT 107
  122. # define kACF_WITH 108
  123. # define kACF_LOOP 109
  124. # define kACF_DO 110
  125. # define kACF_DOLOCAL 111
  126. # define kACF_DOVEC 112
  127. # define kACF_DOALL 113
  128. # define kACF_FORALL 114
  129. # define kACF_ON 115
  130. # define kACF_BODY 116
  131. # define kACF_FLOW_GRAPH 117
  132. # define kACF_ENTRY 118
  133. # define kACF_FLOW_KIND 119
  134. # define kACF_COMPLEX_FLOW 120
  135. # define kACF_INTERVAL_FLOW 121
  136. # define kACF_SIMPLE_FLOW 122
  137. # define kSELECTED_ACF_NODE_LIST 123
  138. # define kSELECTED_ACF_EMPTY 124
  139. # define kSELECTED_ACF_LIST 125
  140. # define kSELECTED_ACF_NODE 126
  141. # define kBT_STMT 127
  142. # define kEXP_STMT 128
  143. # define kASSIGN_STMT 129
  144. # define kPTR_ASSIGN_STMT 130
  145. # define kLABEL_ASSIGN_STMT 131
  146. # define kCALL_STMT 132
  147. # define kIO_STMT 133
  148. # define kGOTO_STMT 134
  149. # define kASS_GOTO_STMT 135
  150. # define kCOMP_GOTO_STMT 136
  151. # define kCOMP_IF_STMT 137
  152. # define kRETURN_STMT 138
  153. # define kPAUSE_STMT 139
  154. # define kEXIT_STMT 140
  155. # define kCYCLE_STMT 141
  156. # define kSTOP_STMT 142
  157. # define kFORMAT_STMT 143
  158. # define kALLOCATE_STMT 144
  159. # define kDEALLOCATE_STMT 145
  160. # define kNULLIFY_STMT 146
  161. # define kREDUCE_STMT 147
  162. # define kGLOBAL_STMT 148
  163. # define kALIGN_STMT 149
  164. # define kDISTRIBUTE_STMT 150
  165. # define kLABEL_USE_LIST 151
  166. # define kLABEL_EMPTY 152
  167. # define kLABEL_LIST 153
  168. # define kOP 154
  169. # define kOP_EQ 155
  170. # define kOP_NE 156
  171. # define kOP_LT 157
  172. # define kOP_GT 158
  173. # define kOP_GE 159
  174. # define kOP_LE 160
  175. # define kOP_PLUS 161
  176. # define kOP_MINUS 162
  177. # define kOP_XOR 163
  178. # define kOP_OR 164
  179. # define kOP_CONCAT 165
  180. # define kOP_TIMES 166
  181. # define kOP_DIVIDE 167
  182. # define kOP_DIV 168
  183. # define kOP_AND 169
  184. # define kOP_EQV 170
  185. # define kOP_NEQV 171
  186. # define kOP_EXPO 172
  187. # define kOP_MOD 173
  188. # define kOP_IN 174
  189. # define kOP_DEFINED 175
  190. # define kOP_ASSIGN 176
  191. # define kOP_LEFT 177
  192. # define kOP_RIGHT 178
  193. # define kOP_LIST 179
  194. # define kOP_IOR 180
  195. # define kOP_IXOR 181
  196. # define kOP_IAND 182
  197. # define kOP1_NOT 183
  198. # define kOP1_SIGN 184
  199. # define kOP1_INOT 185
  200. # define kOP1_SIZE 186
  201. # define kOP1_DEC 187
  202. # define kOP1_INC 188
  203. # define kOP1_ADDRESS 189
  204. # define kOP1_DEREF 190
  205. # define kBT_EXP 191
  206. # define kDUMMY_EXP 192
  207. # define kCONST_EXP 193
  208. # define kOP_EXP 194
  209. # define kOP1_EXP 195
  210. # define kSLICE_EXP 196
  211. # define kPOSTFIX_EXP 197
  212. # define kCALL_EXP 198
  213. # define kCAST_EXP 199
  214. # define kINDEXED_EXP 200
  215. # define kSELECTED_EXP 201
  216. # define kASSIGN_EXP 202
  217. # define kUSED_EXP 203
  218. # define kCOND_EXP 204
  219. # define kVAR_EXP 205
  220. # define kFUNC_CALL_EXP 206
  221. # define kNAMED_EXP 207
  222. # define kDO_EXP 208
  223. # define kTYPE_EXP 209
  224. # define kARRAY_EXP 210
  225. # define kBT_EXP_LIST 211
  226. # define kBTE_EMPTY 212
  227. # define kBTE_LIST 213
  228. # define kBT_VAR 214
  229. # define kDUMMY_VAR 215
  230. # define kUSED_VAR 216
  231. # define kINDEXED_VAR 217
  232. # define kSUBSTRING_VAR 218
  233. # define kSELECTED_VAR 219
  234. # define kLOOP_VAR 220
  235. # define kADDR 221
  236. # define kDO_VAR 222
  237. # define kBT_VAR_LIST 223
  238. # define kBTV_EMPTY 224
  239. # define kBTV_LIST 225
  240. # define kBT_PARAM 226
  241. # define kVAR_PARAM 227
  242. # define kVALUE_PARAM 228
  243. # define kNAMED_PARAM 229
  244. # define kPROC_PARAM 230
  245. # define kFUNC_PARAM 231
  246. # define kFORMAT_PARAM 232
  247. # define kRETURN_PARAM 233
  248. # define kNO_PARAM 234
  249. # define kBT_PARAM_LIST 235
  250. # define kBTP_EMPTY 236
  251. # define kBTP_LIST 237
  252. # define kCONSTANT 238
  253. # define kBOOL_CONSTANT 239
  254. # define kINT_CONSTANT 240
  255. # define kREAL_CONSTANT 241
  256. # define kDREAL_CONSTANT 242
  257. # define kCHAR_CONSTANT 243
  258. # define kSTRING_CONSTANT 244
  259. # define kCOMPLEX_CONSTANT 245
  260. # define kPROC_OBJ 246
  261. # define kVAR_OBJ 247
  262. # define kTYPE_OBJ 248
  263. # define kREC_COMP 249
  264.  
  265. typedef unsigned char Tree_tKind;
  266. typedef unsigned short Tree_tMark;
  267. typedef unsigned short Tree_tLabel;
  268. typedef union Tree_Node * tTree;
  269. typedef void (* Tree_tProcTree) ();
  270. /* line 44 "ast.cg" */
  271.  
  272.  
  273. #include "Idents.h"
  274.  
  275. tIdent DefaultId ();  /* will be used later for queries about such an id */
  276.  
  277.  
  278. /* line 650 "ast.cg" */
  279.  
  280. # include "Definiti.h"
  281.  
  282.  
  283. # ifndef Tree_NodeHead
  284. # define Tree_NodeHead
  285. # endif
  286. # define yyIsCompMax 0
  287. typedef struct { Tree_tKind yyKind; unsigned char yyIsComp0, yyIsDone0; Tree_tMark yyMark, yyOffset; tTree yyParent; Tree_NodeHead } Tree_tNodeHead;
  288. typedef struct { Tree_tNodeHead yyHead; tTree COMP_ELEMENTS; } yCOMP_UNIT;
  289. typedef struct { Tree_tNodeHead yyHead; tTree DECLS; tTree STATS; tTree INTERNALS; } yBODY_NODE;
  290. typedef struct { Tree_tNodeHead yyHead; } yTYPE_NODE;
  291. typedef struct { Tree_tNodeHead yyHead; } yDUMMY_TYPE;
  292. typedef struct { Tree_tNodeHead yyHead; } yVOID_TYPE;
  293. typedef struct { Tree_tNodeHead yyHead; int size; } yINTEGER_TYPE;
  294. typedef struct { Tree_tNodeHead yyHead; int size; } yCARDINAL_TYPE;
  295. typedef struct { Tree_tNodeHead yyHead; int size; } yREAL_TYPE;
  296. typedef struct { Tree_tNodeHead yyHead; int size; } yBOOLEAN_TYPE;
  297. typedef struct { Tree_tNodeHead yyHead; int size; } yCOMPLEX_TYPE;
  298. typedef struct { Tree_tNodeHead yyHead; } yCHAR_TYPE;
  299. typedef struct { Tree_tNodeHead yyHead; tTree LENGTH; } ySTRING_TYPE;
  300. typedef struct { Tree_tNodeHead yyHead; tTree LOWER; tTree UPPER; int left_overlap; int right_overlap; } yINDEX_TYPE;
  301. typedef struct { Tree_tNodeHead yyHead; tTree ID; } yTYPE_ID;
  302. typedef struct { Tree_tNodeHead yyHead; tTree ARRAY_INDEX_TYPES; tTree ARRAY_COMP_TYPE; } yARRAY_TYPE;
  303. typedef struct { Tree_tNodeHead yyHead; tIdent Name; tTree COMPONENTS; } yRECORD_TYPE;
  304. typedef struct { Tree_tNodeHead yyHead; tIdent Name; tTree COMPONENTS; } yUNION_TYPE;
  305. typedef struct { Tree_tNodeHead yyHead; tIdent Name; tTree COMPONENTS; } yENUM_TYPE;
  306. typedef struct { Tree_tNodeHead yyHead; tTree Shape; int left_overlap; int right_overlap; } yDYNAMIC;
  307. typedef struct { Tree_tNodeHead yyHead; tTree PTR_COMP; } yPOINTER_TYPE;
  308. typedef struct { Tree_tNodeHead yyHead; tTree SIZE; tTree ARRAY1_COMP_TYPE; } yARRAY1_TYPE;
  309. typedef struct { Tree_tNodeHead yyHead; tTree FORMALS; tTree RESULT_TYPE; } yFUNCTION_TYPE;
  310. typedef struct { Tree_tNodeHead yyHead; } yTYPE_NODE_LIST;
  311. typedef struct { Tree_tNodeHead yyHead; } yTYPE_EMPTY;
  312. typedef struct { Tree_tNodeHead yyHead; tTree Elem; tTree Next; } yTYPE_LIST;
  313. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yDECL_NODE;
  314. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree MODULE_BODY; } yMODULE_DECL;
  315. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree FORMALS; tTree PROGRAM_BODY; } yPROGRAM_DECL;
  316. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree FORMALS; tTree PROC_BODY; bool IsRecursive; bool IsPure; int HPFExtrinsic; } yPROC_DECL;
  317. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree FORMALS; tTree FUNC_BODY; tTree RESULT_TYPE; tIdent RESULT_ID; bool IsRecursive; bool IsPure; int HPFExtrinsic; } yFUNC_DECL;
  318. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree DATA_BODY; } yBLOCK_DATA_DECL;
  319. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree VAL; } yTYPE_DECL;
  320. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yNAME_DECL;
  321. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tIdent oldname; } yRENAME_DECL;
  322. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree ATTRIBUTES; } yENTITY_DECL;
  323. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree VAL; } yVAR_DECL;
  324. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree IDS; } yCOMMON_DECL;
  325. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree IDS; } yNAMELIST_DECL;
  326. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree DIMENSIONS; } yTEMPLATE_DECL;
  327. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree DIMENSIONS; } yPROCESSORS_DECL;
  328. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yINHERIT_DECL;
  329. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree FORMALS; tTree RESULT_TYPE; tTree FFUNC_BODY; } ySTMT_FUNC_DECL;
  330. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree SPEC; tTree ITEMS; } yINTERFACE_DECL;
  331. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree FORMALS; } yEXT_PROC_DECL;
  332. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree FORMALS; tTree RESULT_TYPE; } yEXT_FUNC_DECL;
  333. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree VAL; } yVAL_PARAM_DECL;
  334. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree VAL; } yVAR_PARAM_DECL;
  335. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree FORMAL; } yPROC_PARAM_DECL;
  336. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree FORMAL; tTree RESULT_TYPE; } yFUNC_PARAM_DECL;
  337. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yELIPSIS_PARAM_DECL;
  338. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yRET_PARAM_DECL;
  339. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tIdent first; tIdent last; tTree VAL; } yIMPLICIT_DECL;
  340. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tIdent use; tTree RENAMINGS; } yUSE_DECL;
  341. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tIdent use; tTree NAMES; } yONLY_USE_DECL;
  342. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree VARS; } yEQV_DECL;
  343. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree VARS; tTree VALS; } yDATA_DECL;
  344. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree INDEXES; } yDIMENSION_DECL;
  345. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree VAL; } yINIT_DATA_DECL;
  346. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree VAL; } yTYPESPEC_DECL;
  347. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yALLOCATABLE_DECL;
  348. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yEXTERNAL_DECL;
  349. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; int intent; } yINTENT_DECL;
  350. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yINTRINSIC_DECL;
  351. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yOPTIONAL_DECL;
  352. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yPOINTER_DECL;
  353. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } ySAVE_DECL;
  354. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yTARGET_DECL;
  355. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree VAL; } yPARAMETER_DECL;
  356. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yPUBLIC_DECL;
  357. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yPRIVATE_DECL;
  358. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree DISTRIBUTION; tIdent target; } yDISTRIBUTE_DECL;
  359. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; tTree ALIGN_SOURCE; tTree ALIGN_SPEC; } yALIGN_DECL;
  360. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yDYNAMIC_DECL;
  361. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } ySEQUENCE_DECL;
  362. typedef struct { Tree_tNodeHead yyHead; tIdent Name; int Pos; } yNOSEQUENCE_DECL;
  363. typedef struct { Tree_tNodeHead yyHead; } yDECL_NODE_LIST;
  364. typedef struct { Tree_tNodeHead yyHead; } yDECL_EMPTY;
  365. typedef struct { Tree_tNodeHead yyHead; tTree Elem; tTree Next; } yDECL_LIST;
  366. typedef struct { Tree_tNodeHead yyHead; } yDISTRIBUTION_SPEC;
  367. typedef struct { Tree_tNodeHead yyHead; } yHOST_DISTRIBUTION;
  368. typedef struct { Tree_tNodeHead yyHead; } yREPL_DISTRIBUTION;
  369. typedef struct { Tree_tNodeHead yyHead; tTree MAPPING; } yNODE_DISTRIBUTION;
  370. typedef struct { Tree_tNodeHead yyHead; } yDISTRIBUTION_FORMAT;
  371. typedef struct { Tree_tNodeHead yyHead; tTree SIZE; } yBLOCK_DISTRIBUTION;
  372. typedef struct { Tree_tNodeHead yyHead; tTree SIZE; } yCYCLIC_DISTRIBUTION;
  373. typedef struct { Tree_tNodeHead yyHead; } ySERIAL_DISTRIBUTION;
  374. typedef struct { Tree_tNodeHead yyHead; } yDIST_FORMAT_LIST;
  375. typedef struct { Tree_tNodeHead yyHead; } yDIST_EMPTY;
  376. typedef struct { Tree_tNodeHead yyHead; tTree Elem; tTree Next; } yDIST_LIST;
  377. typedef struct { Tree_tNodeHead yyHead; } yGENERIC_SPEC;
  378. typedef struct { Tree_tNodeHead yyHead; } yNO_GENERIC_SPEC;
  379. typedef struct { Tree_tNodeHead yyHead; tIdent name; } yID_GENERIC_SPEC;
  380. typedef struct { Tree_tNodeHead yyHead; tTree OPERATOR; } yOP_GENERIC_SPEC;
  381. typedef struct { Tree_tNodeHead yyHead; } yASSIGN_GENERIC_SPEC;
  382. typedef struct { Tree_tNodeHead yyHead; } yACF_NODE_LIST;
  383. typedef struct { Tree_tNodeHead yyHead; } yACF_EMPTY;
  384. typedef struct { Tree_tNodeHead yyHead; tTree Elem; tTree Next; } yACF_LIST;
  385. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; } yACF_NODE;
  386. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; } yACF_DUMMY;
  387. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree BASIC_STMT; } yACF_BASIC;
  388. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree IF_EXP; tTree THEN_PART; tTree ELSE_PART; } yACF_IF;
  389. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree WHERE_EXP; tTree TRUE_PART; tTree FALSE_PART; } yACF_WHERE;
  390. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree SWITCH_EXP; tTree SWITCH_STMT; } yACF_SWITCH;
  391. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree ALTER_EXP; tTree ALTER_STMT; } yACF_ALTER;
  392. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree CASE_EXP; tTree CASE_ALTS; tTree CASE_OTHERWISE; } yACF_CASE;
  393. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree WHILE_EXP; tTree WHILE_BODY; } yACF_WHILE;
  394. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree REPEAT_BODY; tTree REPEAT_EXP; } yACF_REPEAT;
  395. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree WITH_VARS; tTree WITH_BODY; } yACF_WITH;
  396. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree LOOP_BODY; } yACF_LOOP;
  397. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree DO_ID; tTree DO_RANGE; tTree DO_BODY; } yACF_DO;
  398. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree DOLOCAL_ID; tTree DOLOCAL_RANGE; tTree DOLOCAL_BODY; } yACF_DOLOCAL;
  399. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree DOVEC_ID; tTree DOVEC_RANGE; tTree DOVEC_BODY; } yACF_DOVEC;
  400. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree DOALL_NEW; tTree DOALL_ID; tTree DOALL_RANGE; tTree DOALL_BODY; } yACF_DOALL;
  401. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree FORALL_ID; tTree FORALL_RANGE; tTree FORALL_BODY; } yACF_FORALL;
  402. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree ON_VAR; tTree ON_STMT; } yACF_ON;
  403. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree NEW_BODY; tDefinitions Entries; } yACF_BODY;
  404. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree FLOW_NODES; } yACF_FLOW_GRAPH;
  405. typedef struct { Tree_tNodeHead yyHead; int Label; int Line; tTree ENTRY_DECL; } yACF_ENTRY;
  406. typedef struct { Tree_tNodeHead yyHead; } yACF_FLOW_KIND;
  407. typedef struct { Tree_tNodeHead yyHead; } yACF_COMPLEX_FLOW;
  408. typedef struct { Tree_tNodeHead yyHead; } yACF_INTERVAL_FLOW;
  409. typedef struct { Tree_tNodeHead yyHead; } yACF_SIMPLE_FLOW;
  410. typedef struct { Tree_tNodeHead yyHead; } ySELECTED_ACF_NODE_LIST;
  411. typedef struct { Tree_tNodeHead yyHead; } ySELECTED_ACF_EMPTY;
  412. typedef struct { Tree_tNodeHead yyHead; tTree Elem; tTree Next; } ySELECTED_ACF_LIST;
  413. typedef struct { Tree_tNodeHead yyHead; tTree SELECT_LIST; tTree SELECT_ACFS; } ySELECTED_ACF_NODE;
  414. typedef struct { Tree_tNodeHead yyHead; } yBT_STMT;
  415. typedef struct { Tree_tNodeHead yyHead; tTree STMT_EXP; } yEXP_STMT;
  416. typedef struct { Tree_tNodeHead yyHead; tTree ASSIGN_VAR; tTree ASSIGN_EXP; } yASSIGN_STMT;
  417. typedef struct { Tree_tNodeHead yyHead; tTree ASSIGN_VAR; tTree ASSIGN_EXP; } yPTR_ASSIGN_STMT;
  418. typedef struct { Tree_tNodeHead yyHead; int assign_label; tTree LABEL_VAR; } yLABEL_ASSIGN_STMT;
  419. typedef struct { Tree_tNodeHead yyHead; tTree CALL_ID; tTree CALL_PARAMS; } yCALL_STMT;
  420. typedef struct { Tree_tNodeHead yyHead; tTree ID; tTree IO_SPECS; tTree IO_ITEMS; } yIO_STMT;
  421. typedef struct { Tree_tNodeHead yyHead; int GOTO_LABEL; } yGOTO_STMT;
  422. typedef struct { Tree_tNodeHead yyHead; tTree GOTO_VAR; tTree LABELS; } yASS_GOTO_STMT;
  423. typedef struct { Tree_tNodeHead yyHead; tTree GOTO_LABELS; tTree GOTO_EXP; } yCOMP_GOTO_STMT;
  424. typedef struct { Tree_tNodeHead yyHead; tTree IF_EXP; int IF_LT_LABEL; int IF_EQ_LABEL; int IF_GT_LABEL; } yCOMP_IF_STMT;
  425. typedef struct { Tree_tNodeHead yyHead; tTree RETURN_EXP; } yRETURN_STMT;
  426. typedef struct { Tree_tNodeHead yyHead; tTree PAUSE_CONST; } yPAUSE_STMT;
  427. typedef struct { Tree_tNodeHead yyHead; tIdent loopid; } yEXIT_STMT;
  428. typedef struct { Tree_tNodeHead yyHead; tIdent loopid; } yCYCLE_STMT;
  429. typedef struct { Tree_tNodeHead yyHead; tTree STOP_CONST; } ySTOP_STMT;
  430. typedef struct { Tree_tNodeHead yyHead; tTree FORMAT_PARAMS; } yFORMAT_STMT;
  431. typedef struct { Tree_tNodeHead yyHead; tTree PARAMS; tTree STAT; } yALLOCATE_STMT;
  432. typedef struct { Tree_tNodeHead yyHead; tTree PARAMS; tTree STAT; } yDEALLOCATE_STMT;
  433. typedef struct { Tree_tNodeHead yyHead; tTree PARAMS; } yNULLIFY_STMT;
  434. typedef struct { Tree_tNodeHead yyHead; tTree RED_FUNC; tTree RED_PARAMS; } yREDUCE_STMT;
  435. typedef struct { Tree_tNodeHead yyHead; tIdent func; tTree ARRAY; tTree INDEXED_ARRAY; tTree INDEXES; tTree MASK; } yGLOBAL_STMT;
  436. typedef struct { Tree_tNodeHead yyHead; tTree ALIGNEE; tTree ALIGN_SPEC; } yALIGN_STMT;
  437. typedef struct { Tree_tNodeHead yyHead; tTree DISTRIBUTEE; tTree DISTRIBUTION; tIdent target; } yDISTRIBUTE_STMT;
  438. typedef struct { Tree_tNodeHead yyHead; } yLABEL_USE_LIST;
  439. typedef struct { Tree_tNodeHead yyHead; } yLABEL_EMPTY;
  440. typedef struct { Tree_tNodeHead yyHead; int Elem; tTree Next; } yLABEL_LIST;
  441. typedef struct { Tree_tNodeHead yyHead; } yOP;
  442. typedef struct { Tree_tNodeHead yyHead; } yOP_EQ;
  443. typedef struct { Tree_tNodeHead yyHead; } yOP_NE;
  444. typedef struct { Tree_tNodeHead yyHead; } yOP_LT;
  445. typedef struct { Tree_tNodeHead yyHead; } yOP_GT;
  446. typedef struct { Tree_tNodeHead yyHead; } yOP_GE;
  447. typedef struct { Tree_tNodeHead yyHead; } yOP_LE;
  448. typedef struct { Tree_tNodeHead yyHead; } yOP_PLUS;
  449. typedef struct { Tree_tNodeHead yyHead; } yOP_MINUS;
  450. typedef struct { Tree_tNodeHead yyHead; } yOP_XOR;
  451. typedef struct { Tree_tNodeHead yyHead; } yOP_OR;
  452. typedef struct { Tree_tNodeHead yyHead; } yOP_CONCAT;
  453. typedef struct { Tree_tNodeHead yyHead; } yOP_TIMES;
  454. typedef struct { Tree_tNodeHead yyHead; } yOP_DIVIDE;
  455. typedef struct { Tree_tNodeHead yyHead; } yOP_DIV;
  456. typedef struct { Tree_tNodeHead yyHead; } yOP_AND;
  457. typedef struct { Tree_tNodeHead yyHead; } yOP_EQV;
  458. typedef struct { Tree_tNodeHead yyHead; } yOP_NEQV;
  459. typedef struct { Tree_tNodeHead yyHead; } yOP_EXPO;
  460. typedef struct { Tree_tNodeHead yyHead; } yOP_MOD;
  461. typedef struct { Tree_tNodeHead yyHead; } yOP_IN;
  462. typedef struct { Tree_tNodeHead yyHead; tIdent opname; } yOP_DEFINED;
  463. typedef struct { Tree_tNodeHead yyHead; } yOP_ASSIGN;
  464. typedef struct { Tree_tNodeHead yyHead; } yOP_LEFT;
  465. typedef struct { Tree_tNodeHead yyHead; } yOP_RIGHT;
  466. typedef struct { Tree_tNodeHead yyHead; } yOP_LIST;
  467. typedef struct { Tree_tNodeHead yyHead; } yOP_IOR;
  468. typedef struct { Tree_tNodeHead yyHead; } yOP_IXOR;
  469. typedef struct { Tree_tNodeHead yyHead; } yOP_IAND;
  470. typedef struct { Tree_tNodeHead yyHead; } yOP1_NOT;
  471. typedef struct { Tree_tNodeHead yyHead; } yOP1_SIGN;
  472. typedef struct { Tree_tNodeHead yyHead; } yOP1_INOT;
  473. typedef struct { Tree_tNodeHead yyHead; } yOP1_SIZE;
  474. typedef struct { Tree_tNodeHead yyHead; } yOP1_DEC;
  475. typedef struct { Tree_tNodeHead yyHead; } yOP1_INC;
  476. typedef struct { Tree_tNodeHead yyHead; } yOP1_ADDRESS;
  477. typedef struct { Tree_tNodeHead yyHead; } yOP1_DEREF;
  478. typedef struct { Tree_tNodeHead yyHead; } yBT_EXP;
  479. typedef struct { Tree_tNodeHead yyHead; } yDUMMY_EXP;
  480. typedef struct { Tree_tNodeHead yyHead; tTree C; } yCONST_EXP;
  481. typedef struct { Tree_tNodeHead yyHead; tTree EXP_OP; tTree OPND1; tTree OPND2; } yOP_EXP;
  482. typedef struct { Tree_tNodeHead yyHead; tTree EXP_OP1; tTree OPND; } yOP1_EXP;
  483. typedef struct { Tree_tNodeHead yyHead; tTree START; tTree STOP; tTree INC; } ySLICE_EXP;
  484. typedef struct { Tree_tNodeHead yyHead; tTree POSTFIX_OP; tTree OPND; } yPOSTFIX_EXP;
  485. typedef struct { Tree_tNodeHead yyHead; tTree FUNC_ID; tTree FUNC_PARAMS; } yCALL_EXP;
  486. typedef struct { Tree_tNodeHead yyHead; tTree ID; tTree CAST; } yCAST_EXP;
  487. typedef struct { Tree_tNodeHead yyHead; tTree IND_EXP; tTree INDEX; } yINDEXED_EXP;
  488. typedef struct { Tree_tNodeHead yyHead; tTree SELEC_EXP; tTree SELECTOR; } ySELECTED_EXP;
  489. typedef struct { Tree_tNodeHead yyHead; tTree ASSIGN_OP; tTree LHS; tTree RHS; } yASSIGN_EXP;
  490. typedef struct { Tree_tNodeHead yyHead; tTree VARNAME; } yUSED_EXP;
  491. typedef struct { Tree_tNodeHead yyHead; tTree COND; tTree TRUE_EXP; tTree FALSE_EXP; } yCOND_EXP;
  492. typedef struct { Tree_tNodeHead yyHead; tTree V; } yVAR_EXP;
  493. typedef struct { Tree_tNodeHead yyHead; tTree FUNC_ID; tTree FUNC_PARAMS; } yFUNC_CALL_EXP;
  494. typedef struct { Tree_tNodeHead yyHead; tIdent Name; tTree VAL; } yNAMED_EXP;
  495. typedef struct { Tree_tNodeHead yyHead; tTree DO_ID; tTree RANGE; tTree BODY; } yDO_EXP;
  496. typedef struct { Tree_tNodeHead yyHead; tTree ID; tTree ELEMENTS; } yTYPE_EXP;
  497. typedef struct { Tree_tNodeHead yyHead; tTree ELEMENTS; } yARRAY_EXP;
  498. typedef struct { Tree_tNodeHead yyHead; } yBT_EXP_LIST;
  499. typedef struct { Tree_tNodeHead yyHead; } yBTE_EMPTY;
  500. typedef struct { Tree_tNodeHead yyHead; tTree Elem; tTree Next; } yBTE_LIST;
  501. typedef struct { Tree_tNodeHead yyHead; } yBT_VAR;
  502. typedef struct { Tree_tNodeHead yyHead; } yDUMMY_VAR;
  503. typedef struct { Tree_tNodeHead yyHead; tTree VARNAME; } yUSED_VAR;
  504. typedef struct { Tree_tNodeHead yyHead; tTree IND_VAR; tTree IND_EXPS; } yINDEXED_VAR;
  505. typedef struct { Tree_tNodeHead yyHead; tTree IND_VAR; tTree IND_EXP; } ySUBSTRING_VAR;
  506. typedef struct { Tree_tNodeHead yyHead; tTree SELEC_VAR; tTree SELECTOR; } ySELECTED_VAR;
  507. typedef struct { Tree_tNodeHead yyHead; tTree LOOP_VARNAME; } yLOOP_VAR;
  508. typedef struct { Tree_tNodeHead yyHead; tTree E; } yADDR;
  509. typedef struct { Tree_tNodeHead yyHead; tTree DO_ID; tTree RANGE; tTree BODY; } yDO_VAR;
  510. typedef struct { Tree_tNodeHead yyHead; } yBT_VAR_LIST;
  511. typedef struct { Tree_tNodeHead yyHead; } yBTV_EMPTY;
  512. typedef struct { Tree_tNodeHead yyHead; tTree Elem; tTree Next; } yBTV_LIST;
  513. typedef struct { Tree_tNodeHead yyHead; } yBT_PARAM;
  514. typedef struct { Tree_tNodeHead yyHead; tTree V; } yVAR_PARAM;
  515. typedef struct { Tree_tNodeHead yyHead; tTree E; } yVALUE_PARAM;
  516. typedef struct { Tree_tNodeHead yyHead; tIdent Name; tTree VAL; } yNAMED_PARAM;
  517. typedef struct { Tree_tNodeHead yyHead; tTree P; } yPROC_PARAM;
  518. typedef struct { Tree_tNodeHead yyHead; tTree F; } yFUNC_PARAM;
  519. typedef struct { Tree_tNodeHead yyHead; tStringRef S; } yFORMAT_PARAM;
  520. typedef struct { Tree_tNodeHead yyHead; int label; } yRETURN_PARAM;
  521. typedef struct { Tree_tNodeHead yyHead; } yNO_PARAM;
  522. typedef struct { Tree_tNodeHead yyHead; } yBT_PARAM_LIST;
  523. typedef struct { Tree_tNodeHead yyHead; } yBTP_EMPTY;
  524. typedef struct { Tree_tNodeHead yyHead; tTree Elem; tTree Next; } yBTP_LIST;
  525. typedef struct { Tree_tNodeHead yyHead; } yCONSTANT;
  526. typedef struct { Tree_tNodeHead yyHead; int value; } yBOOL_CONSTANT;
  527. typedef struct { Tree_tNodeHead yyHead; int value; } yINT_CONSTANT;
  528. typedef struct { Tree_tNodeHead yyHead; tStringRef value; } yREAL_CONSTANT;
  529. typedef struct { Tree_tNodeHead yyHead; tStringRef value; } yDREAL_CONSTANT;
  530. typedef struct { Tree_tNodeHead yyHead; char value; } yCHAR_CONSTANT;
  531. typedef struct { Tree_tNodeHead yyHead; tStringRef value; } ySTRING_CONSTANT;
  532. typedef struct { Tree_tNodeHead yyHead; tStringRef rvalue; tStringRef ivalue; } yCOMPLEX_CONSTANT;
  533. typedef struct { Tree_tNodeHead yyHead; tIdent Ident; tDefinitions Object; } yPROC_OBJ;
  534. typedef struct { Tree_tNodeHead yyHead; int Pos; tIdent Ident; tDefinitions Object; } yVAR_OBJ;
  535. typedef struct { Tree_tNodeHead yyHead; tIdent Ident; tDefinitions Object; } yTYPE_OBJ;
  536. typedef struct { Tree_tNodeHead yyHead; tIdent Ident; tDefinitions Object; } yREC_COMP;
  537.  
  538. union Tree_Node {
  539.  Tree_tKind Kind;
  540.  Tree_tNodeHead yyHead;
  541.  yCOMP_UNIT COMP_UNIT;
  542.  yBODY_NODE BODY_NODE;
  543.  yTYPE_NODE TYPE_NODE;
  544.  yDUMMY_TYPE DUMMY_TYPE;
  545.  yVOID_TYPE VOID_TYPE;
  546.  yINTEGER_TYPE INTEGER_TYPE;
  547.  yCARDINAL_TYPE CARDINAL_TYPE;
  548.  yREAL_TYPE REAL_TYPE;
  549.  yBOOLEAN_TYPE BOOLEAN_TYPE;
  550.  yCOMPLEX_TYPE COMPLEX_TYPE;
  551.  yCHAR_TYPE CHAR_TYPE;
  552.  ySTRING_TYPE STRING_TYPE;
  553.  yINDEX_TYPE INDEX_TYPE;
  554.  yTYPE_ID TYPE_ID;
  555.  yARRAY_TYPE ARRAY_TYPE;
  556.  yRECORD_TYPE RECORD_TYPE;
  557.  yUNION_TYPE UNION_TYPE;
  558.  yENUM_TYPE ENUM_TYPE;
  559.  yDYNAMIC DYNAMIC;
  560.  yPOINTER_TYPE POINTER_TYPE;
  561.  yARRAY1_TYPE ARRAY1_TYPE;
  562.  yFUNCTION_TYPE FUNCTION_TYPE;
  563.  yTYPE_NODE_LIST TYPE_NODE_LIST;
  564.  yTYPE_EMPTY TYPE_EMPTY;
  565.  yTYPE_LIST TYPE_LIST;
  566.  yDECL_NODE DECL_NODE;
  567.  yMODULE_DECL MODULE_DECL;
  568.  yPROGRAM_DECL PROGRAM_DECL;
  569.  yPROC_DECL PROC_DECL;
  570.  yFUNC_DECL FUNC_DECL;
  571.  yBLOCK_DATA_DECL BLOCK_DATA_DECL;
  572.  yTYPE_DECL TYPE_DECL;
  573.  yNAME_DECL NAME_DECL;
  574.  yRENAME_DECL RENAME_DECL;
  575.  yENTITY_DECL ENTITY_DECL;
  576.  yVAR_DECL VAR_DECL;
  577.  yCOMMON_DECL COMMON_DECL;
  578.  yNAMELIST_DECL NAMELIST_DECL;
  579.  yTEMPLATE_DECL TEMPLATE_DECL;
  580.  yPROCESSORS_DECL PROCESSORS_DECL;
  581.  yINHERIT_DECL INHERIT_DECL;
  582.  ySTMT_FUNC_DECL STMT_FUNC_DECL;
  583.  yINTERFACE_DECL INTERFACE_DECL;
  584.  yEXT_PROC_DECL EXT_PROC_DECL;
  585.  yEXT_FUNC_DECL EXT_FUNC_DECL;
  586.  yVAL_PARAM_DECL VAL_PARAM_DECL;
  587.  yVAR_PARAM_DECL VAR_PARAM_DECL;
  588.  yPROC_PARAM_DECL PROC_PARAM_DECL;
  589.  yFUNC_PARAM_DECL FUNC_PARAM_DECL;
  590.  yELIPSIS_PARAM_DECL ELIPSIS_PARAM_DECL;
  591.  yRET_PARAM_DECL RET_PARAM_DECL;
  592.  yIMPLICIT_DECL IMPLICIT_DECL;
  593.  yUSE_DECL USE_DECL;
  594.  yONLY_USE_DECL ONLY_USE_DECL;
  595.  yEQV_DECL EQV_DECL;
  596.  yDATA_DECL DATA_DECL;
  597.  yDIMENSION_DECL DIMENSION_DECL;
  598.  yINIT_DATA_DECL INIT_DATA_DECL;
  599.  yTYPESPEC_DECL TYPESPEC_DECL;
  600.  yALLOCATABLE_DECL ALLOCATABLE_DECL;
  601.  yEXTERNAL_DECL EXTERNAL_DECL;
  602.  yINTENT_DECL INTENT_DECL;
  603.  yINTRINSIC_DECL INTRINSIC_DECL;
  604.  yOPTIONAL_DECL OPTIONAL_DECL;
  605.  yPOINTER_DECL POINTER_DECL;
  606.  ySAVE_DECL SAVE_DECL;
  607.  yTARGET_DECL TARGET_DECL;
  608.  yPARAMETER_DECL PARAMETER_DECL;
  609.  yPUBLIC_DECL PUBLIC_DECL;
  610.  yPRIVATE_DECL PRIVATE_DECL;
  611.  yDISTRIBUTE_DECL DISTRIBUTE_DECL;
  612.  yALIGN_DECL ALIGN_DECL;
  613.  yDYNAMIC_DECL DYNAMIC_DECL;
  614.  ySEQUENCE_DECL SEQUENCE_DECL;
  615.  yNOSEQUENCE_DECL NOSEQUENCE_DECL;
  616.  yDECL_NODE_LIST DECL_NODE_LIST;
  617.  yDECL_EMPTY DECL_EMPTY;
  618.  yDECL_LIST DECL_LIST;
  619.  yDISTRIBUTION_SPEC DISTRIBUTION_SPEC;
  620.  yHOST_DISTRIBUTION HOST_DISTRIBUTION;
  621.  yREPL_DISTRIBUTION REPL_DISTRIBUTION;
  622.  yNODE_DISTRIBUTION NODE_DISTRIBUTION;
  623.  yDISTRIBUTION_FORMAT DISTRIBUTION_FORMAT;
  624.  yBLOCK_DISTRIBUTION BLOCK_DISTRIBUTION;
  625.  yCYCLIC_DISTRIBUTION CYCLIC_DISTRIBUTION;
  626.  ySERIAL_DISTRIBUTION SERIAL_DISTRIBUTION;
  627.  yDIST_FORMAT_LIST DIST_FORMAT_LIST;
  628.  yDIST_EMPTY DIST_EMPTY;
  629.  yDIST_LIST DIST_LIST;
  630.  yGENERIC_SPEC GENERIC_SPEC;
  631.  yNO_GENERIC_SPEC NO_GENERIC_SPEC;
  632.  yID_GENERIC_SPEC ID_GENERIC_SPEC;
  633.  yOP_GENERIC_SPEC OP_GENERIC_SPEC;
  634.  yASSIGN_GENERIC_SPEC ASSIGN_GENERIC_SPEC;
  635.  yACF_NODE_LIST ACF_NODE_LIST;
  636.  yACF_EMPTY ACF_EMPTY;
  637.  yACF_LIST ACF_LIST;
  638.  yACF_NODE ACF_NODE;
  639.  yACF_DUMMY ACF_DUMMY;
  640.  yACF_BASIC ACF_BASIC;
  641.  yACF_IF ACF_IF;
  642.  yACF_WHERE ACF_WHERE;
  643.  yACF_SWITCH ACF_SWITCH;
  644.  yACF_ALTER ACF_ALTER;
  645.  yACF_CASE ACF_CASE;
  646.  yACF_WHILE ACF_WHILE;
  647.  yACF_REPEAT ACF_REPEAT;
  648.  yACF_WITH ACF_WITH;
  649.  yACF_LOOP ACF_LOOP;
  650.  yACF_DO ACF_DO;
  651.  yACF_DOLOCAL ACF_DOLOCAL;
  652.  yACF_DOVEC ACF_DOVEC;
  653.  yACF_DOALL ACF_DOALL;
  654.  yACF_FORALL ACF_FORALL;
  655.  yACF_ON ACF_ON;
  656.  yACF_BODY ACF_BODY;
  657.  yACF_FLOW_GRAPH ACF_FLOW_GRAPH;
  658.  yACF_ENTRY ACF_ENTRY;
  659.  yACF_FLOW_KIND ACF_FLOW_KIND;
  660.  yACF_COMPLEX_FLOW ACF_COMPLEX_FLOW;
  661.  yACF_INTERVAL_FLOW ACF_INTERVAL_FLOW;
  662.  yACF_SIMPLE_FLOW ACF_SIMPLE_FLOW;
  663.  ySELECTED_ACF_NODE_LIST SELECTED_ACF_NODE_LIST;
  664.  ySELECTED_ACF_EMPTY SELECTED_ACF_EMPTY;
  665.  ySELECTED_ACF_LIST SELECTED_ACF_LIST;
  666.  ySELECTED_ACF_NODE SELECTED_ACF_NODE;
  667.  yBT_STMT BT_STMT;
  668.  yEXP_STMT EXP_STMT;
  669.  yASSIGN_STMT ASSIGN_STMT;
  670.  yPTR_ASSIGN_STMT PTR_ASSIGN_STMT;
  671.  yLABEL_ASSIGN_STMT LABEL_ASSIGN_STMT;
  672.  yCALL_STMT CALL_STMT;
  673.  yIO_STMT IO_STMT;
  674.  yGOTO_STMT GOTO_STMT;
  675.  yASS_GOTO_STMT ASS_GOTO_STMT;
  676.  yCOMP_GOTO_STMT COMP_GOTO_STMT;
  677.  yCOMP_IF_STMT COMP_IF_STMT;
  678.  yRETURN_STMT RETURN_STMT;
  679.  yPAUSE_STMT PAUSE_STMT;
  680.  yEXIT_STMT EXIT_STMT;
  681.  yCYCLE_STMT CYCLE_STMT;
  682.  ySTOP_STMT STOP_STMT;
  683.  yFORMAT_STMT FORMAT_STMT;
  684.  yALLOCATE_STMT ALLOCATE_STMT;
  685.  yDEALLOCATE_STMT DEALLOCATE_STMT;
  686.  yNULLIFY_STMT NULLIFY_STMT;
  687.  yREDUCE_STMT REDUCE_STMT;
  688.  yGLOBAL_STMT GLOBAL_STMT;
  689.  yALIGN_STMT ALIGN_STMT;
  690.  yDISTRIBUTE_STMT DISTRIBUTE_STMT;
  691.  yLABEL_USE_LIST LABEL_USE_LIST;
  692.  yLABEL_EMPTY LABEL_EMPTY;
  693.  yLABEL_LIST LABEL_LIST;
  694.  yOP OP;
  695.  yOP_EQ OP_EQ;
  696.  yOP_NE OP_NE;
  697.  yOP_LT OP_LT;
  698.  yOP_GT OP_GT;
  699.  yOP_GE OP_GE;
  700.  yOP_LE OP_LE;
  701.  yOP_PLUS OP_PLUS;
  702.  yOP_MINUS OP_MINUS;
  703.  yOP_XOR OP_XOR;
  704.  yOP_OR OP_OR;
  705.  yOP_CONCAT OP_CONCAT;
  706.  yOP_TIMES OP_TIMES;
  707.  yOP_DIVIDE OP_DIVIDE;
  708.  yOP_DIV OP_DIV;
  709.  yOP_AND OP_AND;
  710.  yOP_EQV OP_EQV;
  711.  yOP_NEQV OP_NEQV;
  712.  yOP_EXPO OP_EXPO;
  713.  yOP_MOD OP_MOD;
  714.  yOP_IN OP_IN;
  715.  yOP_DEFINED OP_DEFINED;
  716.  yOP_ASSIGN OP_ASSIGN;
  717.  yOP_LEFT OP_LEFT;
  718.  yOP_RIGHT OP_RIGHT;
  719.  yOP_LIST OP_LIST;
  720.  yOP_IOR OP_IOR;
  721.  yOP_IXOR OP_IXOR;
  722.  yOP_IAND OP_IAND;
  723.  yOP1_NOT OP1_NOT;
  724.  yOP1_SIGN OP1_SIGN;
  725.  yOP1_INOT OP1_INOT;
  726.  yOP1_SIZE OP1_SIZE;
  727.  yOP1_DEC OP1_DEC;
  728.  yOP1_INC OP1_INC;
  729.  yOP1_ADDRESS OP1_ADDRESS;
  730.  yOP1_DEREF OP1_DEREF;
  731.  yBT_EXP BT_EXP;
  732.  yDUMMY_EXP DUMMY_EXP;
  733.  yCONST_EXP CONST_EXP;
  734.  yOP_EXP OP_EXP;
  735.  yOP1_EXP OP1_EXP;
  736.  ySLICE_EXP SLICE_EXP;
  737.  yPOSTFIX_EXP POSTFIX_EXP;
  738.  yCALL_EXP CALL_EXP;
  739.  yCAST_EXP CAST_EXP;
  740.  yINDEXED_EXP INDEXED_EXP;
  741.  ySELECTED_EXP SELECTED_EXP;
  742.  yASSIGN_EXP ASSIGN_EXP;
  743.  yUSED_EXP USED_EXP;
  744.  yCOND_EXP COND_EXP;
  745.  yVAR_EXP VAR_EXP;
  746.  yFUNC_CALL_EXP FUNC_CALL_EXP;
  747.  yNAMED_EXP NAMED_EXP;
  748.  yDO_EXP DO_EXP;
  749.  yTYPE_EXP TYPE_EXP;
  750.  yARRAY_EXP ARRAY_EXP;
  751.  yBT_EXP_LIST BT_EXP_LIST;
  752.  yBTE_EMPTY BTE_EMPTY;
  753.  yBTE_LIST BTE_LIST;
  754.  yBT_VAR BT_VAR;
  755.  yDUMMY_VAR DUMMY_VAR;
  756.  yUSED_VAR USED_VAR;
  757.  yINDEXED_VAR INDEXED_VAR;
  758.  ySUBSTRING_VAR SUBSTRING_VAR;
  759.  ySELECTED_VAR SELECTED_VAR;
  760.  yLOOP_VAR LOOP_VAR;
  761.  yADDR ADDR;
  762.  yDO_VAR DO_VAR;
  763.  yBT_VAR_LIST BT_VAR_LIST;
  764.  yBTV_EMPTY BTV_EMPTY;
  765.  yBTV_LIST BTV_LIST;
  766.  yBT_PARAM BT_PARAM;
  767.  yVAR_PARAM VAR_PARAM;
  768.  yVALUE_PARAM VALUE_PARAM;
  769.  yNAMED_PARAM NAMED_PARAM;
  770.  yPROC_PARAM PROC_PARAM;
  771.  yFUNC_PARAM FUNC_PARAM;
  772.  yFORMAT_PARAM FORMAT_PARAM;
  773.  yRETURN_PARAM RETURN_PARAM;
  774.  yNO_PARAM NO_PARAM;
  775.  yBT_PARAM_LIST BT_PARAM_LIST;
  776.  yBTP_EMPTY BTP_EMPTY;
  777.  yBTP_LIST BTP_LIST;
  778.  yCONSTANT CONSTANT;
  779.  yBOOL_CONSTANT BOOL_CONSTANT;
  780.  yINT_CONSTANT INT_CONSTANT;
  781.  yREAL_CONSTANT REAL_CONSTANT;
  782.  yDREAL_CONSTANT DREAL_CONSTANT;
  783.  yCHAR_CONSTANT CHAR_CONSTANT;
  784.  ySTRING_CONSTANT STRING_CONSTANT;
  785.  yCOMPLEX_CONSTANT COMPLEX_CONSTANT;
  786.  yPROC_OBJ PROC_OBJ;
  787.  yVAR_OBJ VAR_OBJ;
  788.  yTYPE_OBJ TYPE_OBJ;
  789.  yREC_COMP REC_COMP;
  790. };
  791.  
  792. extern tTree TreeRoot;
  793. extern unsigned long Tree_HeapUsed;
  794. extern char * Tree_PoolFreePtr, * Tree_PoolMaxPtr;
  795. extern unsigned short Tree_NodeSize [249 + 1];
  796. extern char * Tree_NodeName [249 + 1];
  797.  
  798. extern tTree Tree_Alloc ();
  799. extern tTree MakeTree ARGS((Tree_tKind yyKind));
  800. extern bool Tree_IsType ARGS((register tTree yyt, register Tree_tKind yyKind));
  801.  
  802. extern tTree mCOMP_UNIT ARGS((tTree pCOMP_ELEMENTS));
  803. extern tTree mBODY_NODE ARGS((tTree pDECLS, tTree pSTATS, tTree pINTERNALS));
  804. extern tTree mTYPE_NODE ARGS(());
  805. extern tTree mDUMMY_TYPE ARGS(());
  806. extern tTree mVOID_TYPE ARGS(());
  807. extern tTree mINTEGER_TYPE ARGS((int psize));
  808. extern tTree mCARDINAL_TYPE ARGS((int psize));
  809. extern tTree mREAL_TYPE ARGS((int psize));
  810. extern tTree mBOOLEAN_TYPE ARGS((int psize));
  811. extern tTree mCOMPLEX_TYPE ARGS((int psize));
  812. extern tTree mCHAR_TYPE ARGS(());
  813. extern tTree mSTRING_TYPE ARGS((tTree pLENGTH));
  814. extern tTree mINDEX_TYPE ARGS((tTree pLOWER, tTree pUPPER));
  815. extern tTree mTYPE_ID ARGS((tTree pID));
  816. extern tTree mARRAY_TYPE ARGS((tTree pARRAY_INDEX_TYPES, tTree pARRAY_COMP_TYPE));
  817. extern tTree mRECORD_TYPE ARGS((tIdent pName, tTree pCOMPONENTS));
  818. extern tTree mUNION_TYPE ARGS((tIdent pName, tTree pCOMPONENTS));
  819. extern tTree mENUM_TYPE ARGS((tIdent pName, tTree pCOMPONENTS));
  820. extern tTree mDYNAMIC ARGS(());
  821. extern tTree mPOINTER_TYPE ARGS((tTree pPTR_COMP));
  822. extern tTree mARRAY1_TYPE ARGS((tTree pSIZE, tTree pARRAY1_COMP_TYPE));
  823. extern tTree mFUNCTION_TYPE ARGS((tTree pFORMALS, tTree pRESULT_TYPE));
  824. extern tTree mTYPE_NODE_LIST ARGS(());
  825. extern tTree mTYPE_EMPTY ARGS(());
  826. extern tTree mTYPE_LIST ARGS((tTree pElem, tTree pNext));
  827. extern tTree mDECL_NODE ARGS((tIdent pName, int pPos));
  828. extern tTree mMODULE_DECL ARGS((tIdent pName, int pPos, tTree pMODULE_BODY));
  829. extern tTree mPROGRAM_DECL ARGS((tIdent pName, int pPos, tTree pFORMALS, tTree pPROGRAM_BODY));
  830. extern tTree mPROC_DECL ARGS((tIdent pName, int pPos, tTree pFORMALS, tTree pPROC_BODY));
  831. extern tTree mFUNC_DECL ARGS((tIdent pName, int pPos, tTree pFORMALS, tTree pFUNC_BODY, tTree pRESULT_TYPE, tIdent pRESULT_ID));
  832. extern tTree mBLOCK_DATA_DECL ARGS((tIdent pName, int pPos, tTree pDATA_BODY));
  833. extern tTree mTYPE_DECL ARGS((tIdent pName, int pPos, tTree pVAL));
  834. extern tTree mNAME_DECL ARGS((tIdent pName, int pPos));
  835. extern tTree mRENAME_DECL ARGS((tIdent pName, int pPos, tIdent poldname));
  836. extern tTree mENTITY_DECL ARGS((tIdent pName, int pPos, tTree pATTRIBUTES));
  837. extern tTree mVAR_DECL ARGS((tIdent pName, int pPos, tTree pVAL));
  838. extern tTree mCOMMON_DECL ARGS((tIdent pName, int pPos, tTree pIDS));
  839. extern tTree mNAMELIST_DECL ARGS((tIdent pName, int pPos, tTree pIDS));
  840. extern tTree mTEMPLATE_DECL ARGS((tIdent pName, int pPos, tTree pDIMENSIONS));
  841. extern tTree mPROCESSORS_DECL ARGS((tIdent pName, int pPos, tTree pDIMENSIONS));
  842. extern tTree mINHERIT_DECL ARGS((tIdent pName, int pPos));
  843. extern tTree mSTMT_FUNC_DECL ARGS((tIdent pName, int pPos, tTree pFORMALS, tTree pRESULT_TYPE, tTree pFFUNC_BODY));
  844. extern tTree mINTERFACE_DECL ARGS((tIdent pName, int pPos, tTree pSPEC, tTree pITEMS));
  845. extern tTree mEXT_PROC_DECL ARGS((tIdent pName, int pPos, tTree pFORMALS));
  846. extern tTree mEXT_FUNC_DECL ARGS((tIdent pName, int pPos, tTree pFORMALS, tTree pRESULT_TYPE));
  847. extern tTree mVAL_PARAM_DECL ARGS((tIdent pName, int pPos, tTree pVAL));
  848. extern tTree mVAR_PARAM_DECL ARGS((tIdent pName, int pPos, tTree pVAL));
  849. extern tTree mPROC_PARAM_DECL ARGS((tIdent pName, int pPos, tTree pFORMAL));
  850. extern tTree mFUNC_PARAM_DECL ARGS((tIdent pName, int pPos, tTree pFORMAL, tTree pRESULT_TYPE));
  851. extern tTree mELIPSIS_PARAM_DECL ARGS((tIdent pName, int pPos));
  852. extern tTree mRET_PARAM_DECL ARGS((tIdent pName, int pPos));
  853. extern tTree mIMPLICIT_DECL ARGS((tIdent pName, int pPos, tIdent pfirst, tIdent plast, tTree pVAL));
  854. extern tTree mUSE_DECL ARGS((tIdent pName, int pPos, tIdent puse, tTree pRENAMINGS));
  855. extern tTree mONLY_USE_DECL ARGS((tIdent pName, int pPos, tIdent puse, tTree pNAMES));
  856. extern tTree mEQV_DECL ARGS((tIdent pName, int pPos, tTree pVARS));
  857. extern tTree mDATA_DECL ARGS((tIdent pName, int pPos, tTree pVARS, tTree pVALS));
  858. extern tTree mDIMENSION_DECL ARGS((tIdent pName, int pPos, tTree pINDEXES));
  859. extern tTree mINIT_DATA_DECL ARGS((tIdent pName, int pPos, tTree pVAL));
  860. extern tTree mTYPESPEC_DECL ARGS((tIdent pName, int pPos, tTree pVAL));
  861. extern tTree mALLOCATABLE_DECL ARGS((tIdent pName, int pPos));
  862. extern tTree mEXTERNAL_DECL ARGS((tIdent pName, int pPos));
  863. extern tTree mINTENT_DECL ARGS((tIdent pName, int pPos, int pintent));
  864. extern tTree mINTRINSIC_DECL ARGS((tIdent pName, int pPos));
  865. extern tTree mOPTIONAL_DECL ARGS((tIdent pName, int pPos));
  866. extern tTree mPOINTER_DECL ARGS((tIdent pName, int pPos));
  867. extern tTree mSAVE_DECL ARGS((tIdent pName, int pPos));
  868. extern tTree mTARGET_DECL ARGS((tIdent pName, int pPos));
  869. extern tTree mPARAMETER_DECL ARGS((tIdent pName, int pPos, tTree pVAL));
  870. extern tTree mPUBLIC_DECL ARGS((tIdent pName, int pPos));
  871. extern tTree mPRIVATE_DECL ARGS((tIdent pName, int pPos));
  872. extern tTree mDISTRIBUTE_DECL ARGS((tIdent pName, int pPos, tTree pDISTRIBUTION, tIdent ptarget));
  873. extern tTree mALIGN_DECL ARGS((tIdent pName, int pPos, tTree pALIGN_SOURCE, tTree pALIGN_SPEC));
  874. extern tTree mDYNAMIC_DECL ARGS((tIdent pName, int pPos));
  875. extern tTree mSEQUENCE_DECL ARGS((tIdent pName, int pPos));
  876. extern tTree mNOSEQUENCE_DECL ARGS((tIdent pName, int pPos));
  877. extern tTree mDECL_NODE_LIST ARGS(());
  878. extern tTree mDECL_EMPTY ARGS(());
  879. extern tTree mDECL_LIST ARGS((tTree pElem, tTree pNext));
  880. extern tTree mDISTRIBUTION_SPEC ARGS(());
  881. extern tTree mHOST_DISTRIBUTION ARGS(());
  882. extern tTree mREPL_DISTRIBUTION ARGS(());
  883. extern tTree mNODE_DISTRIBUTION ARGS((tTree pMAPPING));
  884. extern tTree mDISTRIBUTION_FORMAT ARGS(());
  885. extern tTree mBLOCK_DISTRIBUTION ARGS((tTree pSIZE));
  886. extern tTree mCYCLIC_DISTRIBUTION ARGS((tTree pSIZE));
  887. extern tTree mSERIAL_DISTRIBUTION ARGS(());
  888. extern tTree mDIST_FORMAT_LIST ARGS(());
  889. extern tTree mDIST_EMPTY ARGS(());
  890. extern tTree mDIST_LIST ARGS((tTree pElem, tTree pNext));
  891. extern tTree mGENERIC_SPEC ARGS(());
  892. extern tTree mNO_GENERIC_SPEC ARGS(());
  893. extern tTree mID_GENERIC_SPEC ARGS((tIdent pname));
  894. extern tTree mOP_GENERIC_SPEC ARGS((tTree pOPERATOR));
  895. extern tTree mASSIGN_GENERIC_SPEC ARGS(());
  896. extern tTree mACF_NODE_LIST ARGS(());
  897. extern tTree mACF_EMPTY ARGS(());
  898. extern tTree mACF_LIST ARGS((tTree pElem, tTree pNext));
  899. extern tTree mACF_NODE ARGS(());
  900. extern tTree mACF_DUMMY ARGS(());
  901. extern tTree mACF_BASIC ARGS((tTree pBASIC_STMT));
  902. extern tTree mACF_IF ARGS((tTree pIF_EXP, tTree pTHEN_PART, tTree pELSE_PART));
  903. extern tTree mACF_WHERE ARGS((tTree pWHERE_EXP, tTree pTRUE_PART, tTree pFALSE_PART));
  904. extern tTree mACF_SWITCH ARGS((tTree pSWITCH_EXP, tTree pSWITCH_STMT));
  905. extern tTree mACF_ALTER ARGS((tTree pALTER_EXP, tTree pALTER_STMT));
  906. extern tTree mACF_CASE ARGS((tTree pCASE_EXP, tTree pCASE_ALTS, tTree pCASE_OTHERWISE));
  907. extern tTree mACF_WHILE ARGS((tTree pWHILE_EXP, tTree pWHILE_BODY));
  908. extern tTree mACF_REPEAT ARGS((tTree pREPEAT_BODY, tTree pREPEAT_EXP));
  909. extern tTree mACF_WITH ARGS((tTree pWITH_VARS, tTree pWITH_BODY));
  910. extern tTree mACF_LOOP ARGS((tTree pLOOP_BODY));
  911. extern tTree mACF_DO ARGS((tTree pDO_ID, tTree pDO_RANGE, tTree pDO_BODY));
  912. extern tTree mACF_DOLOCAL ARGS((tTree pDOLOCAL_ID, tTree pDOLOCAL_RANGE, tTree pDOLOCAL_BODY));
  913. extern tTree mACF_DOVEC ARGS((tTree pDOVEC_ID, tTree pDOVEC_RANGE, tTree pDOVEC_BODY));
  914. extern tTree mACF_DOALL ARGS((tTree pDOALL_NEW, tTree pDOALL_ID, tTree pDOALL_RANGE, tTree pDOALL_BODY));
  915. extern tTree mACF_FORALL ARGS((tTree pFORALL_ID, tTree pFORALL_RANGE, tTree pFORALL_BODY));
  916. extern tTree mACF_ON ARGS((tTree pON_VAR, tTree pON_STMT));
  917. extern tTree mACF_BODY ARGS((tTree pNEW_BODY));
  918. extern tTree mACF_FLOW_GRAPH ARGS((tTree pFLOW_NODES));
  919. extern tTree mACF_ENTRY ARGS((tTree pENTRY_DECL));
  920. extern tTree mACF_FLOW_KIND ARGS(());
  921. extern tTree mACF_COMPLEX_FLOW ARGS(());
  922. extern tTree mACF_INTERVAL_FLOW ARGS(());
  923. extern tTree mACF_SIMPLE_FLOW ARGS(());
  924. extern tTree mSELECTED_ACF_NODE_LIST ARGS(());
  925. extern tTree mSELECTED_ACF_EMPTY ARGS(());
  926. extern tTree mSELECTED_ACF_LIST ARGS((tTree pElem, tTree pNext));
  927. extern tTree mSELECTED_ACF_NODE ARGS((tTree pSELECT_LIST, tTree pSELECT_ACFS));
  928. extern tTree mBT_STMT ARGS(());
  929. extern tTree mEXP_STMT ARGS((tTree pSTMT_EXP));
  930. extern tTree mASSIGN_STMT ARGS((tTree pASSIGN_VAR, tTree pASSIGN_EXP));
  931. extern tTree mPTR_ASSIGN_STMT ARGS((tTree pASSIGN_VAR, tTree pASSIGN_EXP));
  932. extern tTree mLABEL_ASSIGN_STMT ARGS((int passign_label, tTree pLABEL_VAR));
  933. extern tTree mCALL_STMT ARGS((tTree pCALL_ID, tTree pCALL_PARAMS));
  934. extern tTree mIO_STMT ARGS((tTree pID, tTree pIO_SPECS, tTree pIO_ITEMS));
  935. extern tTree mGOTO_STMT ARGS((int pGOTO_LABEL));
  936. extern tTree mASS_GOTO_STMT ARGS((tTree pGOTO_VAR, tTree pLABELS));
  937. extern tTree mCOMP_GOTO_STMT ARGS((tTree pGOTO_LABELS, tTree pGOTO_EXP));
  938. extern tTree mCOMP_IF_STMT ARGS((tTree pIF_EXP, int pIF_LT_LABEL, int pIF_EQ_LABEL, int pIF_GT_LABEL));
  939. extern tTree mRETURN_STMT ARGS((tTree pRETURN_EXP));
  940. extern tTree mPAUSE_STMT ARGS((tTree pPAUSE_CONST));
  941. extern tTree mEXIT_STMT ARGS((tIdent ploopid));
  942. extern tTree mCYCLE_STMT ARGS((tIdent ploopid));
  943. extern tTree mSTOP_STMT ARGS((tTree pSTOP_CONST));
  944. extern tTree mFORMAT_STMT ARGS((tTree pFORMAT_PARAMS));
  945. extern tTree mALLOCATE_STMT ARGS((tTree pPARAMS, tTree pSTAT));
  946. extern tTree mDEALLOCATE_STMT ARGS((tTree pPARAMS, tTree pSTAT));
  947. extern tTree mNULLIFY_STMT ARGS((tTree pPARAMS));
  948. extern tTree mREDUCE_STMT ARGS((tTree pRED_FUNC, tTree pRED_PARAMS));
  949. extern tTree mGLOBAL_STMT ARGS((tIdent pfunc, tTree pARRAY, tTree pINDEXED_ARRAY, tTree pINDEXES, tTree pMASK));
  950. extern tTree mALIGN_STMT ARGS((tTree pALIGNEE, tTree pALIGN_SPEC));
  951. extern tTree mDISTRIBUTE_STMT ARGS((tTree pDISTRIBUTEE, tTree pDISTRIBUTION, tIdent ptarget));
  952. extern tTree mLABEL_USE_LIST ARGS(());
  953. extern tTree mLABEL_EMPTY ARGS(());
  954. extern tTree mLABEL_LIST ARGS((int pElem, tTree pNext));
  955. extern tTree mOP ARGS(());
  956. extern tTree mOP_EQ ARGS(());
  957. extern tTree mOP_NE ARGS(());
  958. extern tTree mOP_LT ARGS(());
  959. extern tTree mOP_GT ARGS(());
  960. extern tTree mOP_GE ARGS(());
  961. extern tTree mOP_LE ARGS(());
  962. extern tTree mOP_PLUS ARGS(());
  963. extern tTree mOP_MINUS ARGS(());
  964. extern tTree mOP_XOR ARGS(());
  965. extern tTree mOP_OR ARGS(());
  966. extern tTree mOP_CONCAT ARGS(());
  967. extern tTree mOP_TIMES ARGS(());
  968. extern tTree mOP_DIVIDE ARGS(());
  969. extern tTree mOP_DIV ARGS(());
  970. extern tTree mOP_AND ARGS(());
  971. extern tTree mOP_EQV ARGS(());
  972. extern tTree mOP_NEQV ARGS(());
  973. extern tTree mOP_EXPO ARGS(());
  974. extern tTree mOP_MOD ARGS(());
  975. extern tTree mOP_IN ARGS(());
  976. extern tTree mOP_DEFINED ARGS((tIdent popname));
  977. extern tTree mOP_ASSIGN ARGS(());
  978. extern tTree mOP_LEFT ARGS(());
  979. extern tTree mOP_RIGHT ARGS(());
  980. extern tTree mOP_LIST ARGS(());
  981. extern tTree mOP_IOR ARGS(());
  982. extern tTree mOP_IXOR ARGS(());
  983. extern tTree mOP_IAND ARGS(());
  984. extern tTree mOP1_NOT ARGS(());
  985. extern tTree mOP1_SIGN ARGS(());
  986. extern tTree mOP1_INOT ARGS(());
  987. extern tTree mOP1_SIZE ARGS(());
  988. extern tTree mOP1_DEC ARGS(());
  989. extern tTree mOP1_INC ARGS(());
  990. extern tTree mOP1_ADDRESS ARGS(());
  991. extern tTree mOP1_DEREF ARGS(());
  992. extern tTree mBT_EXP ARGS(());
  993. extern tTree mDUMMY_EXP ARGS(());
  994. extern tTree mCONST_EXP ARGS((tTree pC));
  995. extern tTree mOP_EXP ARGS((tTree pEXP_OP, tTree pOPND1, tTree pOPND2));
  996. extern tTree mOP1_EXP ARGS((tTree pEXP_OP1, tTree pOPND));
  997. extern tTree mSLICE_EXP ARGS((tTree pSTART, tTree pSTOP, tTree pINC));
  998. extern tTree mPOSTFIX_EXP ARGS((tTree pPOSTFIX_OP, tTree pOPND));
  999. extern tTree mCALL_EXP ARGS((tTree pFUNC_ID, tTree pFUNC_PARAMS));
  1000. extern tTree mCAST_EXP ARGS((tTree pID, tTree pCAST));
  1001. extern tTree mINDEXED_EXP ARGS((tTree pIND_EXP, tTree pINDEX));
  1002. extern tTree mSELECTED_EXP ARGS((tTree pSELEC_EXP, tTree pSELECTOR));
  1003. extern tTree mASSIGN_EXP ARGS((tTree pASSIGN_OP, tTree pLHS, tTree pRHS));
  1004. extern tTree mUSED_EXP ARGS((tTree pVARNAME));
  1005. extern tTree mCOND_EXP ARGS((tTree pCOND, tTree pTRUE_EXP, tTree pFALSE_EXP));
  1006. extern tTree mVAR_EXP ARGS((tTree pV));
  1007. extern tTree mFUNC_CALL_EXP ARGS((tTree pFUNC_ID, tTree pFUNC_PARAMS));
  1008. extern tTree mNAMED_EXP ARGS((tIdent pName, tTree pVAL));
  1009. extern tTree mDO_EXP ARGS((tTree pDO_ID, tTree pRANGE, tTree pBODY));
  1010. extern tTree mTYPE_EXP ARGS((tTree pID, tTree pELEMENTS));
  1011. extern tTree mARRAY_EXP ARGS((tTree pELEMENTS));
  1012. extern tTree mBT_EXP_LIST ARGS(());
  1013. extern tTree mBTE_EMPTY ARGS(());
  1014. extern tTree mBTE_LIST ARGS((tTree pElem, tTree pNext));
  1015. extern tTree mBT_VAR ARGS(());
  1016. extern tTree mDUMMY_VAR ARGS(());
  1017. extern tTree mUSED_VAR ARGS((tTree pVARNAME));
  1018. extern tTree mINDEXED_VAR ARGS((tTree pIND_VAR, tTree pIND_EXPS));
  1019. extern tTree mSUBSTRING_VAR ARGS((tTree pIND_VAR, tTree pIND_EXP));
  1020. extern tTree mSELECTED_VAR ARGS((tTree pSELEC_VAR, tTree pSELECTOR));
  1021. extern tTree mLOOP_VAR ARGS((tTree pLOOP_VARNAME));
  1022. extern tTree mADDR ARGS((tTree pE));
  1023. extern tTree mDO_VAR ARGS((tTree pDO_ID, tTree pRANGE, tTree pBODY));
  1024. extern tTree mBT_VAR_LIST ARGS(());
  1025. extern tTree mBTV_EMPTY ARGS(());
  1026. extern tTree mBTV_LIST ARGS((tTree pElem, tTree pNext));
  1027. extern tTree mBT_PARAM ARGS(());
  1028. extern tTree mVAR_PARAM ARGS((tTree pV));
  1029. extern tTree mVALUE_PARAM ARGS((tTree pE));
  1030. extern tTree mNAMED_PARAM ARGS((tIdent pName, tTree pVAL));
  1031. extern tTree mPROC_PARAM ARGS((tTree pP));
  1032. extern tTree mFUNC_PARAM ARGS((tTree pF));
  1033. extern tTree mFORMAT_PARAM ARGS((tStringRef pS));
  1034. extern tTree mRETURN_PARAM ARGS((int plabel));
  1035. extern tTree mNO_PARAM ARGS(());
  1036. extern tTree mBT_PARAM_LIST ARGS(());
  1037. extern tTree mBTP_EMPTY ARGS(());
  1038. extern tTree mBTP_LIST ARGS((tTree pElem, tTree pNext));
  1039. extern tTree mCONSTANT ARGS(());
  1040. extern tTree mBOOL_CONSTANT ARGS((int pvalue));
  1041. extern tTree mINT_CONSTANT ARGS((int pvalue));
  1042. extern tTree mREAL_CONSTANT ARGS((tStringRef pvalue));
  1043. extern tTree mDREAL_CONSTANT ARGS((tStringRef pvalue));
  1044. extern tTree mCHAR_CONSTANT ARGS((char pvalue));
  1045. extern tTree mSTRING_CONSTANT ARGS((tStringRef pvalue));
  1046. extern tTree mCOMPLEX_CONSTANT ARGS((tStringRef prvalue, tStringRef pivalue));
  1047. extern tTree mPROC_OBJ ARGS((tIdent pIdent));
  1048. extern tTree mVAR_OBJ ARGS((int pPos, tIdent pIdent));
  1049. extern tTree mTYPE_OBJ ARGS((tIdent pIdent));
  1050. extern tTree mREC_COMP ARGS((tIdent pIdent));
  1051.  
  1052. extern void WriteTreeNode ARGS((FILE * yyyf, tTree yyt));
  1053. extern void WriteTree ARGS((FILE * yyyf, tTree yyt));
  1054. extern tTree ReverseTree ARGS((tTree yyOld));
  1055. extern tTree CopyTree ARGS((tTree yyt));
  1056. extern bool CheckTree ARGS((tTree yyt));
  1057. extern void InitTree ARGS((register tTree yyt));
  1058. extern void BeginTree ();
  1059. extern void CloseTree ();
  1060.  
  1061. # endif
  1062.